Design Compiler
Design Compiler
工具概述
定位与起源
定位与起源:Design Compiler(DC)是Synopsys的逻辑综合工具——将RTL(Verilog/VHDL/SystemVerilog)转换为优化的门级网表。DC是数字IC设计中最核心的一环——RTL设计师和物理设计工程师通过DC的网表"握手"。DC在1986年由Synopsys创始人Aart de Geus博士开发——是EDA行业第一个成功的商业产品——直接定义了"RTL→门级自动综合"这个品类。
DC的核心价值:优秀的RTL+优秀的约束→DC生成优秀的门级网表→物理设计只需局部优化。而差的约束或差的设计→DC生成的网表物理设计很难补救。DC综合的质量直接决定芯片PPA的天花板。
核心技术
两阶段综合:elaboration(编译RTL为GTECH——Synopsys的通用逻辑表示)→optimization(将GTECH映射到具体标准单元库——同时优化时序/面积/功耗)。optimization在约束指导下做多目标优化。
拓扑综合(Topographical):DC Ultra在综合时读入floorplan信息——预估线延迟——避免产生物理不可行的逻辑结构。拓扑综合将placement后的WNS恶化从-80ps降到-20ps。
功耗感知综合:自动插入clock gating——分析RTL的使能逻辑——识别"这组寄存器的值何时不需要更新"——自动插入门控。Multi-Vt分配——关键路径用LVT(快但漏电)——非关键路径用HVT(慢但省电)。
DFT Compiler共享引擎:DC和DFT Compiler共享综合引擎——可以在综合的同时插入扫描链——不需要单独的DFT综合步骤。
主要功能
* RTL→门级综合:DC读入RTL+SDC约束+标准单元库→生成门级网表。支持Verilog/VHDL/SystemVerilog混合输入。 * 约束驱动优化:DC在约束指导下优化——时钟周期→setup优化。输入/输出延迟→IO时序优化。面积约束→area优化。约束质量=综合质量。 * 时序/面积/功耗多目标:DC同时优化三个目标——权重由约束配置决定。高effort做更多优化iteration——更好的QoR——但更长runtime。 * 等价性检查集成:DC输出网表后自动调用Formality做等价性检查——确保综合没有改变功能。
实战案例
某DSP的综合约束翻车:时钟周期约束1.2ns太紧→DC狂插大驱动buffer→面积+30%→物理设计后WNS才-5ps(约束太紧白费了)。松约束到1.5ns→面积正常→物理设计轻松收敛。
拓扑综合节省2周:传统DC产生网表→物理设计WNS=-80ps→ECO 2周。改用DC Ultra拓扑综合→WNS=-20ps→ECO 2天。
Multi-Vt省了20%漏电:DC自动分配HVT/LVT——关键路径用LVT(10%)——非关键用HVT(90%)——总漏电降20%——时序无恶化。
常见误区
误区一:DC=Verilog编译器。 DC不是编译器——是优化引擎。编译器只是翻译——DC做的是在标准单元库中搜索最优的logic structure——这是AI/搜索问题——不是编译问题。
误区二:DC的默认配置最优。 默认配置是"安全"的——不是最优的。调整effort level、优化策略、约束精确性——可以将QoR提升15-30%。
误区三:DC综合面积=芯片面积。 DC面积是cell总面积——不包括物理实现的空白区域、电源网格、IO pad。芯片实际面积通常是DC面积的1.3-1.6倍。